In modern high frequency integrated circuits, operating temperature has become increasingly important. Generally, semiconductor devices are specified to operate in a certain temperature range within which the device has been characterized. Additional heat created on a semiconductor device due to higher operating frequencies may affect power consumption and system performance. Temperature sensors may be implemented in a device to report the current temperature to a controller, which may modify operational parameters that affect temperature such as temporarily adjusting clock rate or running the device in a different power mode. These adjustments may bring the temperature back within the desired temperature range for the device and the operational parameters may then be returned to their previous values.
For semiconductor devices such as Dynamic Random Access Memory (DRAM) devices, a temperature sensing circuit may be used to monitor temperature in order to control the refresh rate of the memory cells. With DRAM devices, a charge representing stored data may be lost due to leakage, and therefore must be periodically refreshed since charge leakage is very dependant on temperature. As operating temperature is variable, maintaining a constant refresh rate may result in either data loss or a waste of power if the refresh rate is performed at a different rate than the temperature demands. As temperature increases, charge leakage also increases, and the memory cell charge must be refreshed more frequently. As temperature decreases, charge leakage also decreases, and refreshing may be performed less frequently. As a result of these problems, it is important that a temperature sensor accurately and efficiently determine the current operating temperature.
One conventional approach to temperature sensing includes comparing an output voltage (Vout) of a circuit to a reference voltage (Vref) and enabling a switch if the output voltage (Vout) is greater than the reference voltage (Vref). By monitoring the percentage of times (X %) that the switch is enabled, a number or measure of output counts can be calculated and stored in a counter, which may be set to represent, for example, one count per 1° Celsius. The temperature then may be calculated by comparing the number or measure of output counts in the counter by some offset constant.
As a result, there is a need for a temperature sensor that can more efficiently obtain a set of linear temperature readings while adding little additional circuitry.